React setState() on unmounted components Warning

解决方案有几个:

  • 自己封装一个cancelable Promise,在unmount的时候cancel掉。
  • 对于通用数据抽到redux的store里用connect传props。
  • 使用rxjs对异步做subscribe,unmount的时候dispose掉。
  • 在异步setState之前做mount判断。如果你确认这个异步setState没有侵入性,也可以不理它。
  • warning的目的在于让开发者确认自己的编码存在潜在的问题,在prod下是不报的。

https://reactjs.org/blog/2015/12/16/ismounted-antipattern.html

https://www.zhihu.com/question/61389307

坚持原创技术分享,您的支持将鼓励我继续创作!